package com.wulis.provider.authority.model.vo;

import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;

/**
 * @author WuliBao
 * @date 2020-04-17
 */
@Data
@Accessors(chain = true)
@ApiModel(description = "新增菜单VO")
public class InsertMenuVo {
    
    @ApiModelProperty("菜单ID")
    @JsonSerialize(using = ToStringSerializer.class)
    private Long id;
    
    @ApiModelProperty("父节点ID")
    @JsonSerialize(using = ToStringSerializer.class)
    private Long parentId;
    
    @ApiModelProperty("图标")
    private String icon;
    
    @ApiModelProperty("菜单名称")
    private String menuName;
    
    @ApiModelProperty(value = "跳转类型（blank|self|top|parent）")
    private String target;
    
    @ApiModelProperty("路由地址")
    private String route;
    
    @ApiModelProperty(value = "重定向地址")
    private String redirect;
    
    @ApiModelProperty("组件路径")
    private String component;
    
    @ApiModelProperty(value = "组件名称")
    private String componentName;
    
    @ApiModelProperty(value = "路由缓存: 0否,1是")
    private Integer keepAlive;
    
    @ApiModelProperty(value = "是否隐藏header内tab: 0否,1是")
    private Integer hiddenHeaderContent;
    
    @ApiModelProperty("排序")
    private Integer sort;
    
    @ApiModelProperty("启用状态：0关闭 1启用")
    private Integer enable;
    
    @ApiModelProperty("菜单类型：0菜单 1按钮")
    private Integer menuType;
}
